User Engagement In a Social Network Using Indications of Acknowledgement

ABSTRACT

A method and system for enhancing and incentivizing user engagement with indications of acknowledgement at a social network is described. An acknowledgement application receives indications of acknowledgement associated with at least one information item from a first user and at least one second user at a social network. The acknowledgement application aggregates and processes the indications of acknowledgement. The acknowledgement application provides at least one result from the processing in response to hovering over an option for the indications of acknowledgement associated with the at least one information item. The acknowledgement application rewards the first user at least one numerical point based on indications of acknowledgement associated with the at least one specific topic and provides at least one badge of achievement to the first user on accumulating at least one threshold of a total number of points.

BACKGROUND

The disclosure relates to enhancing user interactions with indicationsof acknowledgement in a social network.

Social network users are inundated with information on various topics.Users can recommend and share the information they find interesting totheir connections on a social network. As they continue to share andrecommend information on a topic, users develop a level of expertise inthe topic that their connections can come to rely on. Existing socialnetworks let social network users recommend and share information butfail to make the recommending and sharing more engaging to the socialnetwork users.

SUMMARY

In general, one innovative aspect of the subject matter described inthis disclosure may be embodied in methods that include receiving at thesocial network indications of acknowledgement associated with at leastone information item from a first user and a second user, aggregatingthe indications of acknowledgement associated with the at least oneinformation item relating to a topic, receiving search terms from athird user that correspond the topic, providing the indications ofacknowledgement to the third user and providing to the first user anumber of times that the indications of acknowledgement from the firstuser appeared in association with search terms that correspond to thetopic. Other implementations of one or more of these aspects includecorresponding systems, apparatus, and computer programs, configured toperform the actions of the methods, encoded on computer storage devices.

These and other implementations may each optionally include one or moreof the following features. For instance, the operations further include:generating a geographical map including at least a first locationassociated with the first user and a second location associated with thesecond user giving the indications of acknowledgment, generating a graphplotting a total number of indications of acknowledgment received fromthe first user and the second user over time, distributing at least onepoint to the first user based on the indications of acknowledgement andsharing of the at least one information item relating to the topic tothe social network, providing at least one badge of achievement to thefirst user based on reaching at least one threshold of a total number ofpoints, providing for display on a social network profile pageassociated with the first user at least one badge of achievement and agraphical progress bar that indicates progress toward reaching the atleast one threshold of a total number of points, providing for displayon the social network profile page associated with the first user afirst counter for a number of indications of acknowledgement receivedfrom the second user and a second counter for a number of times the atleast one information item posted by the first user is being shared bythe second user on the social network and identifying a name of thefirst user in proximity of the at least one information item relating tothe topic based on the at least one badge of achievement received by thefirst user.

For instance, the features include: the first user and the second userbeing followed by the third user according to a social graph and theindications of acknowledgement being provided to the third userincluding an identity of the first user and the second user, the searchterms received from a search engine and responsive to the search enginereceiving the indications of acknowledgement, generating search resultsthat include the indications of acknowledgement, distributing to thefirst user at least one point responsive to receiving the indications ofacknowledgement from the first user for the at least one informationitem relating to the topic and distributing to the first user at leastone point responsive to receiving the indications of acknowledgement onthe at least one information item shared to the social network from theat least one second user, and the indications of acknowledgement fromthe first user being received from the first user providing a physicalindication of acknowledgement.

The disclosure is advantageous because it has a unique mechanism toenhance and incentivize user engagement with indications ofacknowledgement. The enhancement of user engagement is executed byprocessing indications of acknowledgement associated with an informationitem and providing information associated with the information item forinsight. For example, a graph plotting the total number of indicationsreceived over time. The incentivizing of user engagement is executed byrewarding the users for providing indications of acknowledgement on atopic with achievement badges and virtual rewards.

BRIEF DESCRIPTION OF THE DRAWINGS

The specification is illustrated by way of example, and not by way oflimitation in the figures of the accompanying drawings in which likereference numerals are used to refer to similar elements.

FIG. 1 is a block diagram illustrating an example system for managingindications of acknowledgement in a social network.

FIG. 2 is a block diagram illustrating an example system of anacknowledgement application.

FIG. 3A is a graphic representation of an example user interface fordisplaying information associated with an indication of acknowledgementon an information item.

FIG. 3B is a graphic representation of an example user interface fordisplaying information about indications of acknowledgement on athird-party website.

FIG. 3C is a graphic representation of an example user interface fordisplaying the social network profile page associated with a user.

FIG. 3D is a graphic representation of an example user interface forcommunicating feedback to a user associated with an indication ofacknowledgement.

FIG. 4 is a flowchart of an example method for aggregating, processingand providing information associated with indications ofacknowledgement.

FIG. 5 is a flowchart of an example method for processing theinformation associated with indications of acknowledgement.

FIG. 6 is a flowchart of an example method for incentivizing a user toprovide indications of acknowledgement.

DETAILED DESCRIPTION

A system and method for enhancing user engagement with indications ofacknowledgement at a social network is described below.

FIG. 1 illustrates a block diagram of a system 100 for aggregating,processing and providing information associated with indications ofacknowledgement in a social network according to some instances. Theindication of acknowledgement includes, for example, approval,disapproval, a like, a dislike, a thumbs up or a thumbs down. The system100 includes user devices 115 a, 115 n that can be accessed by users 125a, 125 n, a social network server 101, a third-party server 107 and asearch server 135. In FIG. 1 and the remaining figures, a letter after areference number, such as “115 a” is a reference to the element havingthat particular reference number. A reference number in the text withouta following letter, such as “115,” is a general reference to any or allinstances of the element bearing that reference number. In theillustrated system, these entities can be communicatively coupled via anetwork 105. Although only two devices are illustrated, a large numberof user devices 115 n may be available to a number of users 125 n.Furthermore, while only one network 105 is coupled to the user devices115 a, 115 n, the social network server 101, the third-party server 107and the search server 135, in practice a large number of networks 105can be connected to the entities.

In some instances, the acknowledgement application 103 a can be operableon the social network server 101, which is coupled to the network 105via signal line 104. The social network server 101 also contains asocial network application (not shown) that generates a social networkand includes storage (not shown) for maintaining a record of users andtheir relationships to each other, e.g. a social graph. Although onlyone social network server 101 is shown, multiple servers may be present.

In some instances, a snippet 151 can be stored on a third-party server107, which is communicatively connected to the network 105 via signalline 106. The third-party server 107 includes an application forgenerating a third-party website (not shown). The snippet 151 can becode or routines configured to enable the software included in thethird-party server 107 to communicate with the acknowledgementapplication 103 so that the software can use the service provided by theacknowledgement application 103. For example, the snippet 151communicates with the acknowledgement application 103 to generate anicon of the indication of acknowledgement and to incorporate it withinthe third-party website for users visiting the third-party website toindicate acknowledgement on at least one information item present in thethird-party website. In some instances, the snippet 151 includesHyperText Markup Language code (“HTML code”) that can be configured tocommunicate with the acknowledgement application 103 to exchange data,information and/or commands. In other instances, the snippet 151includes code from a group of C, C++, Java, CSS and PHP. Furthermore,while only one snippet 151 is shown in the third-party server 107, thethird-party server 107 could include one or more snippets 151. Similarlywhile only one third-party server 107 is shown, the system 100 caninclude one or more third-party servers 107.

In some instances, the acknowledgement application 103 b can be storedon a user device 115 a, which is connected to the network 105 via signalline 108. The user 125 a interacts with the user device 115 a via signalline 110. The user device 115 a, 115 n can be a computing device. Forexample, the user device 115 a, 115 n may be a personal computer (“PC”),a cell phone (e.g., a smart phone, a feature phone, a dumb phone, etc.),a tablet computer (or tablet PC), a laptop, a portable game player, aportable music player, a television with one or more processors embeddedtherein or coupled thereto or any other electronic device capable ofaccessing a network. In some instances, the system 100 includes acombination of different types of user devices 115 a, 115 n. Forexample, a first user device 115 a may be a smart phone, a second userdevice may be a personal computer and a plurality of other user devices115 n may be a combination of a personal computer, a smart phone and atablet computer. The acknowledgement application 103 can be stored inone or more combinations on the devices and servers. Furthermore, whileonly one third-party server 107 is shown, the system 100 can include oneor more third-party servers 107.

The network 105 is a conventional type, wired or wireless, and may haveany number of configurations, for example, a star configuration, tokenring configuration or other configurations. Furthermore, the network 105may comprise a local area network (LAN), a wide area network (WAN)(e.g., the Internet), and/or any other interconnected data path acrosswhich multiple devices may communicate. In some instances, the network105 may be a peer-to-peer network. The network 105 may also be coupledto or includes portions of a telecommunications network for sending datain a variety of different communication protocols. In some instances,the network 105 includes Bluetooth communication networks or a cellularcommunications network for sending and receiving data such as via shortmessaging service (SMS), multimedia messaging service (MMS), hypertexttransfer protocol (HTTP), direct data connection, WAP, email, etc.

The acknowledgement application 103 enhances and incentivizes userengagement with indications of acknowledgement. The acknowledgementapplication 103 receives indications of acknowledgment, aggregates andprocesses the indications of acknowledgment in the social network. Insome instances, the acknowledgement application 103 provides at leastone result from the processing to a user in response to moving an arrowto hover over an icon of the indication of acknowledgement associatedwith an information item. The information item includes, for example, awebpage on a third-party website and items within the social network,for example, a post, an image, a video, a check-in and a reference to awebpage (either a direct reference or a reshare). In some instances, theacknowledgement application 103 distributes to the user numerical pointsfor indicating or receiving indications of acknowledgement on one ormore information item associated with a topic. In other instances, theacknowledgement application 103 provides a badge of achievement to theuser on accumulating a threshold of total number of points.

Referring now to FIG. 2, the acknowledgement application 103 is shown inmore detail. FIG. 2 is a block diagram of a computing device 200 thatincludes the acknowledgement application 103, a memory 237, a processor235, a storage device 131 and a communication unit 241. Optionally, thecomputing device 200 can be a social network server 101. In someinstances, the computing device 200 can be a third-party server 107. Inother instances, the computing device 200 may be a user device 115 a.

The processor 235 includes an arithmetic logic unit, a microprocessor, ageneral purpose controller or some other processor array to performcomputations and provide electronic display signals to a display device.The processor 235 can be coupled to the bus 220 for communication withthe other components via signal line 236. Processor 235 processes datasignals and may include various computing architectures including acomplex instruction set computer (CISC) architecture, a reducedinstruction set computer (RISC) architecture, or an architectureimplementing a combination of instruction sets. Although only a singleprocessor is shown in FIG. 2, multiple processors may be included. Insome instances, the processing capability may be limited to supportingthe display of images and the capture and transmission of images. Inother instances, the processing capability might be enough to performmore complex tasks, including various types of feature extraction andsampling. It may be obvious that other processors, operating systems,sensors, displays and physical configurations may be possible.

The memory 237 stores instructions and/or data that may be executed bythe processor 235. The memory 237 can be coupled to the bus 220 forcommunication with the other components via signal line 238. Theinstructions and/or data may include code for performing any and/or allof the techniques described herein. The memory 237 may be a dynamicrandom access memory (DRAM) device, a static random access memory (SRAM)device, flash memory or some other memory device known in the art. Insome instances, the memory 237 may also include a non-volatile memory orsimilar permanent storage device and media. For example, a hard diskdrive, a floppy disk drive, a CD-ROM device, a DVD-ROM device, a DVD-RAMdevice, a DVD-RW device, a flash memory device, or some other massstorage device known in the art for storing information on a morepermanent basis.

The storage device 131 is a non-transitory memory that stores datanecessary for the functionality of the acknowledgement application 103.The storage device 131 can be communicatively coupled by the bus 220 forcommunication with the other components of the computing device 200 viasignal line 240. The data stored in the storage device 131 includesindications of acknowledgement, gamification information and a socialgraph. The indications of acknowledgement may be a list (or a database)of indications of acknowledgement associated with authenticated users.For example, indications of acknowledgement include endorsements ofwebsites or parts of websites visited by an authenticated user. Thephrase social graph can be a file that includes the relationshipsbetween users in a social network. The gamification information may be arepository for storing game design techniques and mechanics to encourageuser engagement to provide indications of acknowledgement and productionof quality user-generated content.

The communication unit 241 receives data from a third-party server 107,a social network server 101, a search server 135 or another user device115 n. The communication unit 241 transmits the data to theacknowledgement application 103. The communication unit 241 can becoupled to the bus 220 via signal line 242. In some instances, thecommunication unit 241 includes a port for direct physical connection tothe network 105 or to another communication channel. For example, thecommunication unit 241 includes a USB, SD, CAT-5 or similar port forwired communication with the network 105. In some instances, thecommunication unit 241 includes a wireless transceiver for exchangingdata with the network 105, or with another communication channel, usingone or more wireless communication methods, such as IEEE 802.11, IEEE802.16, BLUETOOTH®, near field communication (NFC) or another suitablewireless communication method. In other instances, the communicationunit 241 includes a NFC chip that generates a radio frequency (RF) forshort-range communication.

In some instances, the acknowledgement application 103 includes acontroller 201, a user authentication module 203, a social networkengine 205, an aggregating module 207, a processing module 209, anincentivizing module 211 and a user interface engine 213.

The controller 201 can be software including routines for receiving datavia the communication unit 241, routing the data to the appropriateengine or module and transmitting responses from modules or engines tothe communication unit 241 for transmission to the user device 115, thethird-party server 107, the search server 135 or the social networkserver 101. In some instances, the controller 201 can be a set ofinstructions executable by the processor 235 to provide thefunctionality described below for managing data. In other instances, thecontroller 201 can be stored in the memory 237 of the computing device200 and can be accessible and executable by the processor 235. In eitherof the instances, the controller 201 can be coupled to the bus 220 andadapted for cooperation and communication with the processor 235, thememory 237, the user authentication module 203, the aggregating module207, the user interface engine 213 and other components of the computingdevice 200 via signal line 222.

The controller 201 receives information via the communication unit 241from a user device 115. The controller 201 identifies the type of databeing received and transmits the data to the appropriate module orengine. For example, the controller 201 receives data for creating apost on the social network from a user device 115 and sends the data tothe social network engine 205. In some instances, the controller 201receives indications of acknowledgement (for example, approve,disapprove, like, dislike, thumbs up, thumbs down) at the social networkfor at least one information item via a user device 115 and transmitsthe indications of acknowledgement to the aggregating module 207. Theindications of acknowledgement may be data including explicit signalingof interest in at least one information item found online or in thephysical world. For example, a user clicks on the button for theindications of acknowledgement, usually in the form of text or an image,associated with a search engine result. After the user clicks on thebutton for the indications of acknowledgement, the controller 201 sendsinformation associated with the indication of acknowledgement to theaggregating module 207.

The user authentication module 203 can be code and routines forreceiving a login request for authentication from a requesting user. Insome instances, the user authentication module 203 can be a set ofinstructions executable by the processor 235 to provide thefunctionality described below for authenticating the login request. Inother instances, the user authentication module 203 can be stored in thememory 237 of the computing device 200 and can be accessible andexecutable by the processor 235. In either of the instances, the userauthentication module 203 can be coupled to the bus 220 and adapted forcooperation and communication with the processor 235, the storage device131 and other components of the computing device 200 via signal line224.

In some instances, the user authentication module 203 receives a loginrequest including login information from a requesting user forauthentication. For example, the user authentication module 203 receivesa login request from the requesting user for logging into a socialnetwork. The user authentication module 203 identifies the requestinguser based at least in part on the login information associated with thelogin. The login information associated with the login can include, butis not limited to, a user name and/or a password, a user alias, an emailaddress, a retina scan of a user, a fingerprint swipe of a user, anelectronic identifier, magnetic badge swipe or other similar forms ofuser identifier information. In addition, the user authentication module203 receives secondary information including, but not limited to, theinternet protocol (IP) address of the user device 115 from which thelogin request is originating from, the device identification number ofthe user device 115 being used to request login from, and/or thelocation of the user device 115 from which the login request isoriginating from, including the state and/or country, and verifiedbrowser cookies.

In some instances, if the login request for authentication does notinclude a correct user name and password, the login request is denied.In other instances, the user authentication module 203 is used inaccount recovery when the account owner has forgotten his, or her,username and/or password. In some instances, the user authenticationmodule 203 detects a potentially fraudulent authentication by analyzingthe secondary information included in the login request. For example, ifthe IP address associated with the login request is an IP address of a“blacklisted” user, or a suspected bot, the user authentication module203 identifies the login request as potentially fraudulent. The userauthentication module 203 detects a potentially fraudulentauthentication by comparing the secondary information to historicalauthentication information of the account owner. For example, if thelogin request for authentication originates from a country, or device,that the requesting user has not attempted to send login requests frombefore, the user authentication module 203 identifies the login requestas potentially fraudulent. In some instances, a potentially fraudulentauthentication attempt includes a failed authentication attempt.

The social network engine 205 can be software including routines forgenerating and managing a social network. In some instances, the socialnetwork engine 205 can be a set of instructions executable by theprocessor 235 to provide the functionality described below forgenerating and managing a social network. In other instances, the socialnetwork engine 205 can be stored in the memory 237 of the computingdevice 200 and can be accessible and executable by the processor 235. Ineither of the instances, the social network engine 205 can be coupled tothe bus 220 and adapted for cooperation and communication with theprocessor 235, the storage device 131, the controller 201, the userinterface engine 213 and other components of the computing device 200via signal line 226.

A social network can be a type of social structure where therelationships between the users 125 are included in a social graph. Insome instances, the social graph includes a social affinity betweenusers. For example, when a first user follows a second user, they have afirst-degree relationship. When the second user follows a third userthat the first user does not follow, the first user has a second-degreerelationship with the third user. The lower the degree of separationbetween users, the more they share social affinity. In some instances,social affinity is also a measure of how many people are connectedbetween users. For example, two users that are associated with the samefive people could have a higher affinity than two users that are bothassociated with only one person.

The social network engine 205 manages the social network by handlingaccount registration, publication of content (e.g. posts, comments,photos, links, check-ins, etc.), managing of groups, managing differentsharing and visibility levels, updating the social graph, etc. Forexample, the social network engine 205 registers the user 125 byreceiving information such as a username and password and generates auser profile that is associated with the user 125. In some instances,the user profile includes additional information about the user 125including interests (e.g. soccer, reading, food), activities (e.g.search history, indications of acknowledgement, shared posts, uniqueposts, comments) and demographics (e.g. location). In other instances,the user profile includes at least one achievement badge received fromthe incentivizing module 211 described in more detail below including agraphical progress bar that indicates progress toward receiving one ormore achievement badges.

In some instances, the social network engine 205 receives indications ofacknowledgement associated with at least one information item from afirst user and at least one second user at the social network. The firstuser and the at least one second user can be connected on the socialnetwork. The at least one information item includes a search engineresult, an advertisement, a text-based post, a website, a webpage, anarticle, an image, a video file and an audio file. In some instances,the information item may be shared to the social network by the firstuser, explicitly classified as belonging to a topic and receiveindications of acknowledgement from the at least one second userclicking on an icon of the indication of acknowledgement(acknowledgement button) associated with the shared information item.For example, the first user may embed hash-tags associated with thetopic while sharing the information item to the social network. In otherinstances, the social network engine 205 searches for and analyzeskeywords, page description tags, title tags and other metadata embeddedin the shared information item to implicitly determine the topicassociated with the information item and classifies it accordingly. Thesocial network engine 205 transmits instructions to the user interfaceengine 213 to generate a user interface that includes informationassociated with the information item that is being shared to the socialnetwork including a picture or a thumbnail, a title and a summary of theinformation item extracted from a website hosting the information item.The indications of acknowledgement received from the first user and theat least one second user are transmitted to the aggregating module 207for aggregating the indications of acknowledgement.

In some instances, the social network engine 205 receives search termsor links to websites from a search engine 143 and searches the socialnetwork to identify users that provided indications of acknowledgementassociated with the search terms or links. The social network engine 205provides the search engine 143 with information about the users, forexample, a number of users that provided the indications ofacknowledgement. In the instance where the user consents to the use ofsuch data, the social network engine 205 provides the search engine 143with the identity of the users that provided the indications ofacknowledgement. In some instances, the social network engine 205provides the identity of the other users to the search engine 143 if theother users have a close relationship to the first user in the socialgraph. For example, a first user searches for “Arches National Park”using a search server 135. The search engine 143 at the search server135 transmits the identity of the first user and the search terms“Arches National Park” to the social network engine 205. The socialnetwork engine 205 identifies other users that provided an indication ofacknowledgement for websites about Arches National Park. In the instancewhere the user consents to the use of such data, the social networkengine 205 transmits the identity of the other users to the searchengine 143, which generates a search results page that includes thenumber of users that provided the indications of acknowledgement fordifferent websites and their identities to the first user.

In some instances, the social network engine 205 receives indications ofacknowledgement associated with at least one live event from the users125 physically providing indications of at the venue of the live event.For example, a physical indication of acknowledgment button can beinstalled at a trade show and users can indicate acknowledgments at eachpresentation booth in the trade show by pressing the physical indicationof acknowledgement button. The users 125 can be authenticated to providephysical indications of acknowledgement via the user authenticationmodule 203 which reads a radio-frequency identification (RFID) tagembedded in the user devices 115. In other instances, the social networkengine 205 receives indications of acknowledgement associated with atleast one physical entity captured and analyzed for identificationthrough an image recognition application present on the user device 115.The at least one physical entity can include a landmark, a painting, aproduct, a barcode, a natural phenomenon, a printed text, an animal anda plant. For example, the users 125 can take pictures of differentproducts (e.g. cars, boats, books, manufacturer logos, beverages, comicsetc.) present at the trade show to indicate acknowledgement of thedifferent products at the social network. In yet other instances, thesocial network engine 205 receives indications of acknowledgement on theat least one information item retrieved by the search server 135 inresponse to the image recognition application identifying the capturedimage of the physical entity received via the user device 115.

The aggregating module 207 can be software including routines foraggregating indications of acknowledgement received at the socialnetwork. In some instances, the aggregating module 207 may be a set ofinstructions executable by the processor 235 to provide thefunctionality described below for aggregating the indications ofacknowledgement. In other instances, the aggregating module 207 may bestored in the memory 237 of the computing device 200 and can beaccessible and executable by the processor 235. In either of theinstances, the aggregating module 207 can be coupled to the bus 220 forcommunication with the processor 235, the storage device 131 and othercomponents of the computing device 200 via signal line 228.

In some instances, the aggregating module 207 aggregates the indicationsof acknowledgement associated with the at least one information itemfrom the first user and the at least one second user at the socialnetwork for the purpose of storing the indications of acknowledgement inthe storage device 131. For example, the aggregation module 207 receivesapproval of a webpage with a search engine from the first user and theat least one second user who might be connected to the first user orotherwise associated with the social network, while searching for atopic. In other instances, the aggregating module 207 retrieves from thesocial network engine 205 at least a timestamp and a user locationassociated with each of the indications of acknowledgement and storesthem in the storage device 131. The timestamp could be the date or timeat which the acknowledgement was indicated. The user location can be ageographical position of the user device associated with the indicationof acknowledgment provided by the user 125 that is identified usingcellular positioning, Wi-Fi positioning or a global positioning system(GPS). In some instances, the user location identified can be limited tothe city alone.

In some instances, the aggregating module 207 aggregates the firstuser's indications of acknowledgement on at least one information itemassociated with at least one topic. For example, the first user selectsa clickable button for providing an indication of acknowledgement on oneor more articles related to rock climbing. In other instances, theaggregating module 207 aggregates the indications of acknowledgementthat the first user receives from the at least one second user on the atleast one information item associated with the at least one topic sharedto the social network. For example, the aggregating module 207 receivesindications of acknowledgement on one or more articles related to rockclimbing on behalf of a first user from other users who are connected tothe first user on the social network.

The processing module 209 can be software including routines forprocessing the aggregated indications of acknowledgement for the one ormore information items. In some instances, the processing module 209 maybe a set of instructions executable by the processor 235 to provide thefunctionality described below for processing the aggregated indicationsof acknowledgement. In other instances, the processing module 209 may bestored in the memory 237 of the computing device 200 and can beaccessible and executable by the processor 235. In either of theinstances, the processing module 209 can be coupled to the bus 220 forcommunication with the processor 235, the storage device 131 and othercomponents of the computing device 200 via signal line 230.

In some instances, the processing module 209 generates a graph plottingtotal number of indications of acknowledgement received over time forthe one or more information items. The graph visualizes the viewingstatistics associated with the information item. In other instances, theprocessing module 209 generates a geographical map that includes atleast one geographical position associated with the indications ofacknowledgement received for the one or more information items. Theprocessing module 209 accesses the indications of acknowledgement in thestorage device 131 or receives the indications of acknowledgementdirectly and analyzes the timestamp and user location informationassociated with each of the indications of acknowledgement to generatethe graph and the geographical map. The processing module 209 transmitsinstructions to the user interface engine 213 to generate graphical datathat includes at least one of the graph and the geographical map inresponse to the first user and/or the at least one second user moving anarrow to hover over the icon for the indication of acknowledgement. Forexample, when a user moves an arrow to hover over the button forproviding an indication of acknowledgement for a search engine result,the search engine results page displays the graph of viewing statisticsand the geographical map representing distinct locations of individualusers who provided indications of acknowledgment for the search engineresult subject to those individual users consenting to the use of suchdata. In other instances, the geographical map generated by theprocessing module 209 includes only the location of the at least onesecond user who is directly connected to the first user on the socialnetwork (e.g. the second user and the first user follow each other).

In some instances, the processing module 209 transmits instructions tothe user interface engine 213 to generate a user interface thattransforms the indication of acknowledgment received from the first userto appear as part of an anonymous aggregated count of users 125 whoprovided indications of acknowledgement on the at least one informationitem. In other instances, the indications of acknowledgement receivedfrom the first user appear as part of the social network profileassociated with the first user. For example, a special tab on theprofile page can display the indications of acknowledgement as and whenthey are provided by the first user. The special tab can be madepublicly accessible on the profile page.

The incentivizing module 211 can be software including routines forincentivizing user engagement in aggregating indications ofacknowledgement. In some instances, the incentivizing module 211 may bea set of instructions executable by the processor 235 to provide thefunctionality described below for incentivizing user engagement. Inother instances, the incentivizing module 211 may be stored in thememory 237 of the computing device 200 and can be accessible andexecutable by the processor 235. In either of the instances, theincentivizing module 211 can be coupled to the bus 220 for communicationwith the processor 235, the storage device 131 and other components ofthe computing device 200 via signal line 232.

The incentivizing module 211 edits and stores game design rules asgamification information included in the storage device 131. The gamedesign rules can be the rules used to make indications ofacknowledgement more engaging for the users 125. In some instances, theincentivizing module 211 rewards the first user by distributing at leastone numerical point for indicating an acknowledgement on the at leastone information item associated with the at least one topic at thesocial network. For example, providing an indication of acknowledgmentat the social network on a rock climbing article published on anewspaper website earns the first user one numerical point. In otherinstances, the incentivizing module 211 rewards the first user at leastone numerical point for receiving an indication of acknowledgement or are-share on the at least one information item associated with the atleast one topic (shared to the social network) from the at least onesecond user. For example, when a first user shares a video on rockclimbing to the social network, the incentivizing module 211 distributesone numerical point to the first user when one second user (connected tothe first user or otherwise) on the social network provides anindication of acknowledgement associated with the shared video orre-shares the video. In other instances, the incentivizing module 211distributes at least one numerical point to a user responsive to theuser providing the indication of acknowledgement.

The incentivizing module 211 distributes an achievement badge for atopic to a user for accumulating at least one threshold of a totalnumber of points associated with at least one topic. The at least oneachievement badge can be a virtual representation of becomingknowledgeable on the at least one topic and can be displayed on thesocial network profile page associated with the first user. In someinstances, the at least one achievement badge can indicate the status orexpert level of the first user associated with the at least one topic.For example, securing an “Expert” achievement badge by accumulating 100numerical points and securing a “Veteran” achievement badge byaccumulating 1000 numerical points. In some other instances, theincentivizing module 211 generates an achievement badge for providing athreshold number of indications of acknowledgement and/or re-shares ofcontent. For example, the incentivizing module 211 generates a superuser badge when the user provides over 100 indications ofacknowledgement or shares over 10 things.

The incentivizing module 211 transmits instructions to the userinterface engine 213 to generate a user interface that displays agraphical progress bar to granularly indicate progress toward reachingthe threshold of a total number of points associated with the at leastone achievement badge. The graphical progress bar can be visible to theat least one second user visiting the social network profile pageassociated with the first user. In other instances, the first userreceives additional rewards for exceeding a threshold number of points.For example, a business rewards a user that controls a business profilepage with a monetary credit once the user accumulates 100 points fromindications of acknowledgments on the associated business profile pageon the social network for $10 of advertisement credits to market thebusiness website on an advertising network.

In some instances, the incentivizing module 211 incentivizes userengagement by transmitting instructions to the user interface engine 213to generate a user interface that includes a first counter on a socialnetwork profile associated with the first user for a number ofindications of acknowledgment received for the at least one informationitem shared to the social network by the first user from the at leastone second user and a second counter for a number of times the at leastone information item posted by the first user is being shared by the atleast one second user on the social network. In other instances, theincentivizing module 211 lists a name and photo of the first user withthe at least one achievement badge on the at least one information itemassociated with the topic to add credence to the at least oneinformation item that is viewed by other users on the social network.For example, in the instance where the user consents to the use of suchdata, the name and photo of the first user together with an indicationof his/her expertise can appear on at least one search engine resultassociated with a rock climbing query. In other instances, theincentivizing module 211 uses feedback to encourage users to add moreindications of acknowledgement to information items by informing usersof how many times information items that they created receivedindications or acknowledgement or were reshared, and how many timestheir indications of acknowledgement appeared in association withcontent items. For example, if the search engine results include thename of the first user as an expert for indications of acknowledgmentfrom the at least one second user, the incentivizing module 211 caninform the first user about the number of times the first user'sindications of acknowledgment appeared in the search results.

The user interface engine 213 can be software including routines forgenerating a user interface that receives indications of acknowledgementfrom users 125 and/or displays information associated with theindications of acknowledgement to the users 125 via the communicationunit 241. The user interface can be transmitted and displayed on a userdevice 115, for example, a mobile device or a desktop computer. In someinstances, the user interface engine 213 can be a set of instructionsexecutable by the processor 235 to provide the functionality describedbelow for receiving indications of acknowledgement from users 125 and/ordisplaying information associated with the indications ofacknowledgement to the users 125. In other instances, the user interfaceengine 213 can be stored in the memory 237 of the computing device 200and can be accessible and executable by the processor 235. In either ofthe instances, the user interface engine 213 can be coupled to the bus220 for communication with the processor 235 and other components viasignal line 234.

Turning now to user interface engine 213, FIG. 3A is a graphicrepresentation 300 of an example user interface that is generated by theuser interface engine 213 for displaying information associated with anindication of acknowledgement on an information item in response tohovering over the acknowledgment button. In this example, the graphicrepresentation 300 displays a search engine results page 304 that isretrieved in response to a query 306 input by a second user 302. In someinstances, the second user 302 can be connected to the first user 316 ona social network via the social graph. An indication of acknowledgmentbutton 308 associated with at least one search engine result 318 islisted on the search engine results page 304 for providing an indicationof acknowledgement. In some instances, in response to the second user302 employing a mouse or other device to make an arrow hover over theindication of acknowledgement button 308, the user interface can includea visual overview 310 of the information associated with the indicationsof acknowledgement. The visual overview 310 includes a graph 312plotting the total number of indications of acknowledgement associatedwith the search engine result 318 as a function of time and ageographical map 314 mapping at least the geographical position 320 ofthe first user 316 and a super user who approved of the search engineresult 318. In the instance where the user contents to the use of suchdata, the search engine result 318 can be annotated with the name of thefirst user 316 and his or her expertise (or achievement badges) in thetopic to add credence to the search engine result 318 since the firstuser 316 provided an indication of acknowledgement on the search engineresult 318.

FIG. 3B is a graphic representation 325 of an example user interfacethat is generated by a website module on a third-party server thatemploys the snippet 151 for displaying information about indications ofacknowledgement for a group on the social network with a topic relatedto the topic of the website generated by the website module. In thisexample, the graphic representation 325 displays an acknowledgement box324 including a first acknowledgement button 326 for indicatingacknowledgement of a group on the social network with a topic that issimilar to the third-party website about Arches National Park. In someinstances, the acknowledgment box 324 can include an aggregated count ofthe users who have provided indications of acknowledgement of the groupon the social network. In other instances, the third-party website canincorporate at least one second acknowledgement button 328 for providingindications of acknowledgement for one or more information items on thethird-party website.

FIG. 3C is a graphic representation 350 of an example user interfacethat is generated by the user interface engine 213 for displaying thesocial network profile page associated with a user. In this example, thegraphic representation 350 displays a profile page 332 associated with afirst user 316. In some instances, the first user 316 shares a post 334associated with rock climbing 344 and receives indications ofacknowledgement 336 from 40 other users. The post 334 can include thenumber of shares 338 it accumulated on the social network in order toincentivize the first user to share more posts. In some instances, thefirst user 316 can include hash-tags 340 to classify the post 334 asbelonging to the category of rock climbing 344 (topic). In otherinstances, the first user 316 can classify a video 352 as belonging tothe category rock climbing 344 by choosing the rock climbing checkbox inthe drop down menu 342 associated with the video 352. The profile page332 includes a first achievement badge 346 earned by the first user 316by providing indications of acknowledgement about rock climbing,receiving indications of acknowledgement and sharing articles associatedwith the category rock climbing 344 at the social network. In someinstances, the profile page 332 includes a progress bar 348 indicatingthe completion status toward securing a second achievement badge 354(higher level achievement badge) for providing a large number ofindications of acknowledgement and re-shares. In other instances, theprofile page 332 includes a statistics section 330 associated with thefirst user 316. The statistics section 330 include a first counter for anumber of indications of acknowledgement received for information itemsprovided by the first user 316 and a second counter for a number oftimes the information items provided by the first user 316 were sharedby his or her connections on the social network.

FIG. 3D is a graphic representation 375 of an example user interfacethat is generated by the user interface engine 213 for communicatingfeedback to the user associated with the indications of acknowledgement.In this example, the graphic representation 375 displays a notificationstream for the first user 316 on the social network. The first user 316selects the notifications link 362, the sub-window 364 refreshes todisplay feedback 366 associated with at least one acknowledgement madeby the first user 316. The feedback 366 can be received when one or moreconnections of the first user 316 find the name of the first user 316annotated with the search engine result and provide indications ofacknowledgement on the search engine result. In the instance where theusers consent to the use of such data, the feedback 366 includesinformation about the users that provided feedback including theconnection shared between the users and the first user 316. For example,the first user 316 is connected to User 2 through a work group.

In some instances, data can be stored in the memory 237 of the computingdevice 200, further described in conjunction with FIG. 2, so thatexecution of the data by the processor 235 included in the computingdevice 200 causes execution of the functionality described below inconjunction with FIGS. 4, 5 and 6.

FIG. 4 is a flowchart 400 of an example method for aggregating,processing and providing information associated with indications ofacknowledgement. The user authentication module 203 receives 402 arequest for login from at least a first user and a second user. Thesocial network engine 205 receives 404 indications of acknowledgementassociated with at least one information item at a social network fromthe first user and the second user. The aggregating module 207aggregates 406 the indications of acknowledgement associated with theinformation item relating to a topic. For example, the aggregatingmodule 207 aggregates indications of acknowledgement for webpages aboutArches National Park to the topic of Arches National Park.

The social network engine 205 receives 408 search terms from a searchengine 143 associated with a third user that is connected to the firstuser and the at least one second user. For example, the social networkengine 205 receives “Arches National Park” search terms from the thirduser. The third user is connected to the first user and the second user,for example, because third user placed the first user into a photographygroup and the second user into a work friends group. In some instances,information about the indications of acknowledgement provided by thefirst and second users is contingent upon the first and second usersfollowing the third user. The social network engine 205 determines 410that the search terms relate to the topic and identifies the indicationsof acknowledgement for the topic. For example, the social network engine205 determines that the search terms relate to Arches National Park andidentifies the websites for which the first user and the second userprovided indications of acknowledgement for Arches National Park.

The social network engine 205 provides 412 the indications ofacknowledgement and the identity of the first and the second user to thesearch engine 143. The search engine 143 incorporates the indications ofacknowledgement into the search results. For example, the search engine143 generates graphical data for showing that the first user and thesecond user provided indications of acknowledgement for a webpage aboutArches National Park.

FIG. 5 is a flowchart 500 of an example method for processing theinformation associated with indications of acknowledgement. The socialnetwork engine 205 receives 502 indications of acknowledgementassociated with at least one information item at a social network from afirst user and a second user that are connected to a third user via asocial graph. The first and second users provide permission for theiruser data to be used by the social network engine 205. For example, thefirst and second users set a visibility level where users can see theirindications of acknowledgement if they follow that user and otherwisethe information remains private.

The aggregating module 207 aggregates 504 the indications ofacknowledgement from the first user and the second user. The processingmodule 209 processes the indications of acknowledgement by generating506 a geographical map including a first location associated with thefirst user and at a second location associated with the second user. Insome instances, the locations are for towns and not street addresses.The processing module 209 generates 508 a graph plotting a total numberof indications of acknowledgement received over time. The processingmodule 209 instructs the user interface engine 213 to generate graphicaldata for displaying the geographical map and the graph. The userinterface engine 213 provides 510 the geographical map and the graph tothe third user. In some instances, the user interface engine 213provides a user interface that displays the geographical map and thegraph in response to a user's mouse hovering over an option for theindications of acknowledgement associated with the at least oneinformation item.

FIG. 6 is a flowchart 600 of an example method for incentivizing a userto provide indications of acknowledgement. The user authenticationmodule 203 receives 602 a request for login from a first user. Thesocial network engine 205 receives 604 indications of acknowledgement ata social network. The aggregating module 207 aggregates 606 theindications of acknowledgement. The incentivizing module 211 distributes608 to the first user a first point for indicating an acknowledgement onan information item associated with a topic, distributes 610 to thefirst user a second point for sharing an information item associatedwith the topic to the social network and distributes 612 to the firstuser at least one third point for receiving an indication ofacknowledgement from at least one second user on the information itemshared to the social network. The incentivizing module 211 determines614 whether the sum of points has reached a threshold. Thus, if thethreshold is reached, the incentivizing module 211 provides 616 a badgeof achievement for displaying on a profile page of the social networkassociated with the first user. This serves as a reward that encouragesthe user to continue interacting with the social network. If the sum ofpoints has not reached a threshold, the incentivizing module 211generates 618 a progress bar indicating the progress toward reaching thethreshold for displaying on the profile page of the social networkassociated with the first user.

In the above description, for purposes of explanation, numerous specificdetails are set forth in order to provide a thorough understanding ofthe specification. The instances presented in this description can bepracticed without these specific details. In other instances, structuresand devices are shown in block diagram form in order to avoid obscuringthe specification. For example, the specification is described in someinstances above with reference to user interfaces and particularhardware. However, the description applies to any type of computingdevice that can receive data and commands, and any peripheral devicesproviding services.

Reference in the specification to “one embodiment” or “an embodiment”means that a particular feature, structure, or characteristic describedin connection with the embodiment is included in at least oneembodiment. The appearances of the phrase “in one embodiment” in variousplaces in the specification are not necessarily all referring to thesame embodiment.

Some portions of the detailed descriptions are presented in terms ofalgorithms and symbolic representations of operations on data bitswithin a computer memory. These algorithmic descriptions andrepresentations are the means used to most effectively convey thesubstance of the work. An algorithm is here, and generally, conceived tobe a self-consistent sequence of steps leading to a desired result. Thesteps are those requiring physical manipulations of physical quantities.Usually, though not necessarily, these quantities take the form ofelectrical or magnetic signals capable of being stored, transferred,combined, compared, and otherwise manipulated. It has proven convenientat times, principally for reasons of common usage, to refer to thesesignals as bits, values, elements, symbols, characters, terms, numbersor the like.

It should be borne in mind, however, that all of these and similar termsare to be associated with the appropriate physical quantities and aremerely convenient labels applied to these quantities. Unlessspecifically stated otherwise as apparent from the following discussion,it is appreciated that throughout the description, discussions utilizingterms such as “processing” or “computing” or “calculating” or“determining” or “displaying” or the like, refer to the action andprocesses of a computer system, or similar electronic computing device,that manipulates and transforms data represented as physical(electronic) quantities within the computer system's registers andmemories into other data similarly represented as physical quantitieswithin the computer system memories or registers or other suchinformation storage, transmission or display devices.

The specification also relates to an apparatus for performing theoperations herein. This apparatus may be specially constructed for therequired purposes, or it may comprise a general-purpose computerselectively activated or reconfigured by a computer program stored inthe computer. Such a computer program may be stored in a computerreadable storage medium, such as, but is not limited to, any type ofdisk including floppy disks, optical disks, CD-ROMs, and magnetic disks,read-only memories (ROMs), random access memories (RAMs), EPROMs,EEPROMs, magnetic or optical cards, flash memories including USB keyswith non-volatile memory or any type of media suitable for storingelectronic instructions, each coupled to a computer system bus.

Some instances can take the form of an entirely hardware embodiment, anentirely software embodiment or an embodiment containing both hardwareand software elements. A preferred embodiment is implemented insoftware, which includes but is not limited to firmware, residentsoftware, microcode, etc.

Furthermore, some instances can take the form of a computer programproduct accessible from a computer-usable or computer-readable mediumproviding program code for use by or in connection with a computer orany instruction execution system. For the purposes of this description,a computer-usable or computer readable medium can be any apparatus thatcan contain, store, communicate, propagate, or transport the program foruse by or in connection with the instruction execution system,apparatus, or device.

A data processing system suitable for storing and/or executing programcode will include at least one processor coupled directly or indirectlyto memory elements through a system bus. The memory elements can includelocal memory employed during actual execution of the program code, bulkstorage, and cache memories which provide temporary storage of at leastsome program code in order to reduce the number of times code must beretrieved from bulk storage during execution.

Input/output or I/O devices (including but not limited to keyboards,displays, pointing devices, etc.) can be coupled to the system eitherdirectly or through intervening I/O controllers.

Network adapters may also be coupled to the system to enable the dataprocessing system to become coupled to other data processing systems orremote printers or storage devices through intervening private or publicnetworks. Modems, cable modem and Ethernet cards are just a few of thecurrently available types of network adapters.

Finally, the algorithms and displays presented herein are not inherentlyrelated to any particular computer or other apparatus. Variousgeneral-purpose systems may be used with programs in accordance with theteachings herein, or it may prove convenient to construct morespecialized apparatus to perform the required method steps. The requiredstructure for a variety of these systems will appear from thedescription. In addition, the specification is not described withreference to any particular programming language. It will be appreciatedthat a variety of programming languages may be used to implement theteachings of the various instances as described herein.

The foregoing description of the instances of the specification has beenpresented for the purposes of illustration and description. It is notintended to be exhaustive or to limit the specification to the preciseform disclosed. Many modifications and variations are possible in lightof the above teaching. It is intended that the scope of the disclosurebe limited not by this detailed description, but rather by the claims ofthis application. As will be understood by those familiar with the art,the specification may be embodied in other specific forms withoutdeparting from the spirit or essential characteristics thereof.Likewise, the particular naming and division of the modules, routines,features, attributes, methodologies and other aspects are not mandatoryor significant, and the mechanisms that implement the specification orits features may have different names, divisions and/or formats.Furthermore, the modules, routines, features, attributes, methodologiesand other aspects of the disclosure can be implemented as software,hardware, firmware or any combination of the three. Also, wherever acomponent, an example of which is a module, of the specification can beimplemented as software, the component can be implemented as astandalone program, as part of a larger program, as a plurality ofseparate programs, as a statically or dynamically linked library, as akernel loadable module, as a device driver, and/or in every and anyother way known now or in the future. Additionally, the disclosure is inno way limited to implementation in any specific programming language,or for any specific operating system or environment. Accordingly, thedisclosure is intended to be illustrative, but not limiting, of thescope of the specification, which is set forth in the following claims.

What is claimed is:
 1. A method comprising: receiving, at a socialnetwork, indications of acknowledgment associated with at least oneinformation item from at least a first user and a second user;aggregating the indications of acknowledgment associated with the atleast one information item according to a topic; receiving search termsfrom a third user that correspond to the topic; providing theindications of acknowledgement to the third user; and providing to thefirst user a number of times that the indication of acknowledgement fromthe first user appeared in association with search terms that correspondto the topic.
 2. The method of claim 1, wherein the search terms arereceived from a search engine and responsive to the search enginereceiving the indications of acknowledgement, the search enginegenerating search results that include the indications ofacknowledgement.
 3. The method of claim 1, wherein the first user andthe second user are followed by the third user according to a socialgraph and wherein the indications of acknowledgement provided to thethird user include an identity of the first user and the second user. 4.The method of claim 1, further comprising: generating a geographical mapincluding at least a first location associated with the first user and asecond location associated with the second user giving the indicationsof acknowledgment; and generating a graph plotting a total number ofindications of acknowledgment received from the first user and thesecond user over time.
 5. The method of claim 1, further comprising:distributing, at the social network, at least one point to the firstuser based on the indications of acknowledgment from the first user andsharing of the at least one information item relating to the topic tothe social network; and providing at least one badge of achievement tothe first user based on reaching at least one threshold of a totalnumber of points.
 6. The method of claim 5, wherein distributing atleast one point to the first user based on the indications ofacknowledgment is responsive to receiving the indications ofacknowledgment from the first user for the at least one information itemrelating to the topic.
 7. The method of claim 5, wherein distributing atleast one point to the first user based on the indications ofacknowledgement is responsive to receiving the indications ofacknowledgment on the at least one information item shared to the socialnetwork from the at least one second user.
 8. The method of claim 5,further comprising providing for display on a social network profilepage associated with the first user at least one badge of achievementand a graphical progress bar that indicates progress toward reaching theat least one threshold of a total number of points.
 9. The method ofclaim 5, further comprising providing for display on a social networkprofile page associated with the first user a first counter for a numberof indications of acknowledgment received from the second user and asecond counter for a number of times the at least one information itemposted by the first user is being shared by the second user on thesocial network.
 10. The method of claim 5, further comprisingidentifying a name of the first user in proximity to the at least oneinformation item relating to the topic based on the at least one badgeof achievement received by the first user.
 11. The method of claim 5,further comprising the first user exchanging the at least one thresholdof a total number of points accumulated for a virtual reward.
 12. Themethod of claim 1, wherein the indication of acknowledgement from thefirst user is received from the first user providing a physicalindication of acknowledgement.
 13. A system comprising: one or moreprocessors, the processors being configured to: receive, at a socialnetwork, indications of acknowledgement associated with at least oneinformation item from a first user and a second user; aggregate theindications of acknowledgement associated with the at least oneinformation item according to a topic; receive search terms from a userthat corresponds to the topic; provide the indications ofacknowledgement to the third user; and provide to the first user anumber of times that the indications of acknowledgement from the firstuser appeared in association with search terms that correspond to thetopic.
 14. The system of claim 13, wherein the one or more processorsare further configured to: generate a geographical map including atleast a first location associated with the first user and at least onesecond location associated with the second user giving the indicationsof acknowledgment; and generate a graph plotting a total number ofindications of acknowledgment received from the first user and thesecond user over time.
 15. A system of claim 13, wherein the one or moreprocessors are further configured to distribute, at the social network,at least one point to the first user based on the indications ofacknowledgment from the first user and sharing of the at least oneinformation item relating to the topic to the social network andproviding at least one badge of achievement to the first user based onreaching at least one threshold of a total number of points.
 16. Thesystem of claim 15, wherein distributing at least one point to the firstuser based on the indications of acknowledgment is responsive toreceiving the indications of acknowledgment from the first user for theat least one information item relating to the topic.
 17. The system ofclaim 15, wherein distributing at least one point to the first userbased on the indications of acknowledgement is responsive to receivingthe indications of acknowledgment on the at least one information itemshared to the social network from the second user.
 18. A computerprogram product comprising a non-transitory computer readable mediumencoding instructions that, in response to execution by a computingdevice, cause the computing device to perform operations comprising:receiving, at a social network, indications of acknowledgment associatedwith at least one information item from a first user and a second user;aggregating the indications of acknowledgment associated with the atleast one information item relating to a topic; receiving search termsfrom a third user that correspond to the topic; providing theindications of acknowledgement to the third user; and providing to thefirst user a number of times that the indication of acknowledgement fromthe first user appeared in association with search terms that correspondto the topic.
 19. The computer program product of claim 18, furthercomprising: generating a geographical map including at least a firstlocation associated with the first user and at least one second locationassociated with the second user giving the indications ofacknowledgment; and generating a graph plotting a total number ofindications of acknowledgment received from the first user and thesecond user over time.
 20. The computer program product of claim 18,further comprising: distributing, at the social network, at least onepoint to the first user based on the indications of acknowledgment fromthe first user and sharing of the at least one information item relatingto the topic to the social network; and providing at least one badge ofachievement to the first user based on reaching at least one thresholdof a total number of points.